package com.itxiuyixiu.volunteer.dto;

import com.itxiuyixiu.entity.enums.ActivityState;
import com.itxiuyixiu.entity.enums.ActivityType;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;

/**
 * @author 黄磊
 * @date 2020/6/1
 */
public class ActivitySaveParam {
    /**
     * 活动名称
     */
    @NotEmpty(message = "活动名不能为空")
    private String activityName;
    /**
     * 组织介绍
     */
    private String activityDetail;
    /**
     * 活动开始时间
     */
    @NotNull(message = "活动开始时间不能为空")
    private LocalDateTime startTime;
    /**
     * 活动结束时间
     */
    @NotNull(message = "活动结束时间不能为空")
    private LocalDateTime endTime;
    /**
     * 活动人数上限
     */
    @NotNull(message = "活动人数上限不能为空")
    private Integer maxNumber;
    /**
     * 活动注意事项
     */
    private String attention;
    /**
     * 活动类型
     */
    @NotNull(message = "活动类型不能为空")
    private ActivityType activityType;
    /**
     * 活动地点
     */
    private String activityAddress;
    /**
     * 活动不允许退出时间
     */
    @NotNull(message = "活动不允许退出时间不能为空")
    private LocalDateTime outTime;
    /**
     * 工时
     */
    @NotNull(message = "活动志愿者时长不能为空")
    private Float serveHours;
    /**
     * 是否学院限制
     */
    @NotNull(message = "是否学院限制不能为空")
    private Boolean academyLimited;
    /**
     * 限制允许的学院
     */
    private String academyLimitedList;
    /**
     * 项目id---外键
     */
    private Integer projectId;

    public String getActivityName() {
        return activityName;
    }

    public void setActivityName(String activityName) {
        this.activityName = activityName;
    }

    public String getActivityDetail() {
        return activityDetail;
    }

    public void setActivityDetail(String activityDetail) {
        this.activityDetail = activityDetail;
    }

    public LocalDateTime getStartTime() {
        return startTime;
    }

    public void setStartTime(LocalDateTime startTime) {
        this.startTime = startTime;
    }

    public LocalDateTime getEndTime() {
        return endTime;
    }

    public void setEndTime(LocalDateTime endTime) {
        this.endTime = endTime;
    }

    public Integer getMaxNumber() {
        return maxNumber;
    }

    public void setMaxNumber(Integer maxNumber) {
        this.maxNumber = maxNumber;
    }

    public String getAttention() {
        return attention;
    }

    public void setAttention(String attention) {
        this.attention = attention;
    }

    public ActivityType getActivityType() {
        return activityType;
    }

    public void setActivityType(ActivityType activityType) {
        this.activityType = activityType;
    }

    public String getActivityAddress() {
        return activityAddress;
    }

    public void setActivityAddress(String activityAddress) {
        this.activityAddress = activityAddress;
    }

    public LocalDateTime getOutTime() {
        return outTime;
    }

    public void setOutTime(LocalDateTime outTime) {
        this.outTime = outTime;
    }

    public Float getServeHours() {
        return serveHours;
    }

    public void setServeHours(Float serveHours) {
        this.serveHours = serveHours;
    }

    public Boolean getAcademyLimited() {
        return academyLimited;
    }

    public void setAcademyLimited(Boolean academyLimited) {
        this.academyLimited = academyLimited;
    }

    public String getAcademyLimitedList() {
        return academyLimitedList;
    }

    public void setAcademyLimitedList(String academyLimitedList) {
        this.academyLimitedList = academyLimitedList;
    }

    public Integer getProjectId() {
        return projectId;
    }

    public void setProjectId(Integer projectId) {
        this.projectId = projectId;
    }
}
